package bom.example.common.jsonfilter;

import java.util.HashMap;
import java.util.HashSet;
import java.util.Map;

/**
 * @author Xiongx
 * @version 1.0
 * @date 2021/6/12 14:00
 * @since JDK 1.8
 */
public class JsonFilterObject {

    private Object jsonObject;

    private Map<Class, HashSet<String>> includes = new HashMap<Class, HashSet<String>>();

    private Map<Class, HashSet<String>> excludes = new HashMap<Class, HashSet<String>>();

    public JsonFilterObject() {
    }

    /**
     * 构造器
     * @param jsonObject 对象
     * @param includes 包含的属性
     * @param excludes 排除的属性
     */
    public JsonFilterObject(Object jsonObject, Map<Class, HashSet<String>> includes,
                            Map<Class, HashSet<String>> excludes) {
        this.jsonObject = jsonObject;
        this.includes = includes;
        this.excludes = excludes;
    }

    public Object getJsonObject() {
        return jsonObject;
    }

    public void setJsonObject(Object jsonObject) {
        this.jsonObject = jsonObject;
    }

    public Map<Class, HashSet<String>> getIncludes() {
        return includes;
    }

    public void setIncludes(Map<Class, HashSet<String>> includes) {
        this.includes = includes;
    }

    public Map<Class, HashSet<String>> getExcludes() {
        return excludes;
    }

    public void setExcludes(Map<Class, HashSet<String>> excludes) {
        this.excludes = excludes;
    }

}
